package com.itlong.cloud.sdkv3.service;

import com.itlong.cloud.POJO.VO.SDKMessageV3;
import com.itlong.cloud.POJO.VO.sdk.v3.hw.CancelTravelWrap;
import com.itlong.cloud.POJO.VO.sdk.v3.hw.DoorCtrlCloseWrap;
import com.itlong.cloud.POJO.VO.sdk.v3.hw.DoorCtrlOpenWrap;
import com.itlong.cloud.POJO.VO.sdk.v3.hw.SetTravelWrap;

/**
 * <desc>
 * SDKV3接口
 * </desc>
 *
 * @createDate 2021-05-17
 */
public interface ISDKV3Service {

    /**
     * <desc>
     * 预约乘梯
     * </desc>
     *
     * @param setTravelWrap 乘梯指令
     * @return
     * @author zhouchun
     * @createDate 2021-05-17
     */
    SDKMessageV3 cloudElevatorCall(SetTravelWrap setTravelWrap);

    /**
     * <desc>
     * 开门
     * </desc>
     *
     * @param doorCtrlOpenWrap 开门指令
     * @return
     * @author zhouchun
     * @createDate 2021-05-17
     */
    SDKMessageV3 openDoor(DoorCtrlOpenWrap doorCtrlOpenWrap);

    /**
     * <desc>
     * 关门
     * </desc>
     *
     * @param doorCtrlCloseWrap 关门指令
     * @return
     * @author zhouchun
     * @createDate 2021-05-17
     */
    SDKMessageV3 closeDoor(DoorCtrlCloseWrap doorCtrlCloseWrap);

    /**
     * <desc>
     * 取消呼梯指令提交
     * </desc>
     *
     * @author zhouchun
     * @createDate 2021-06-16
     */
    SDKMessageV3 submitCancelElevator(CancelTravelWrap cancelTravelWrap);

}